package com.iva.beam;

import java.io.Serializable;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;

import com.iva.model.Contribuyentes;
import com.iva.selectedvw.ContribuyentesModelData;
import com.iva.service.contribuyenteService;


@Component("contribuyente")
public class ContribuyenteBeam implements Serializable{
	
	
	@Autowired
	private  contribuyenteService userService;


	private String regProv;
	private String nomProv;
	private String razonSoc;
	private String repLegal;
	private String contacto;
	private String direccion1;
	private String direccion2;
	private String telefono1;
	private String telefono2;
	private String correoe;
	private String codDep;
	private String codMuni;
	private String numNit;
	private String codGiro;
	private List<Contribuyentes> contribuyentes;
	private Contribuyentes contribuyentesSelected;
	private ContribuyentesModelData contribuyenteModel;


	

	public Contribuyentes getContribuyente(){
		Contribuyentes obj = new Contribuyentes();
		obj.setRegProv(this.getRegProv());
		obj.setNomProv(this.getNomProv());
		obj.setRazonSoc(this.getRazonSoc());
		obj.setRepLegal(this.getRepLegal());
		obj.setContacto(this.getContacto());
		obj.setDireccion1(this.getDireccion1());
		obj.setDireccion2(this.getDireccion2());
		obj.setTelefono1(this.getTelefono1());
		obj.setTelefono2(this.getTelefono2());
		obj.setCorreoe(this.getCorreoe());
		obj.setCodDep(this.getCodDep());
		obj.setCodMuni(this.getCodMuni());
		obj.setNumNit(this.getNumNit());
		obj.setCodGiro(this.getCodGiro());
		return obj;
	}	
	
	public String insertContribuyentes(){
		Contribuyentes contr = this.getContribuyente();
		System.out.println(contr.getRegProv());
		
		userService.insertContribuyentes(contr);
		return "contribuyente";
	}
	
	public String getRegProv() {
		return regProv;
	}
	public void setRegProv(String regProv) {
		this.regProv = regProv;
	}
	public String getNomProv() {
		return nomProv;
	}
	public void setNomProv(String nomProv) {
		this.nomProv = nomProv;
	}
	public String getRazonSoc() {
		return razonSoc;
	}
	public void setRazonSoc(String razonSoc) {
		this.razonSoc = razonSoc;
	}
	public String getRepLegal() {
		return repLegal;
	}
	public void setRepLegal(String repLegal) {
		this.repLegal = repLegal;
	}
	public String getContacto() {
		return contacto;
	}
	public void setContacto(String contacto) {
		this.contacto = contacto;
	}
	public String getDireccion1() {
		return direccion1;
	}
	public void setDireccion1(String direccion1) {
		this.direccion1 = direccion1;
	}
	public String getDireccion2() {
		return direccion2;
	}
	public void setDireccion2(String direccion2) {
		this.direccion2 = direccion2;
	}
	public String getTelefono1() {
		return telefono1;
	}
	public void setTelefono1(String telefono1) {
		this.telefono1 = telefono1;
	}
	public String getTelefono2() {
		return telefono2;
	}
	public void setTelefono2(String telefono2) {
		this.telefono2 = telefono2;
	}
	public String getCorreoe() {
		return correoe;
	}
	public void setCorreoe(String correoe) {
		this.correoe = correoe;
	}
	public String getCodDep() {
		return codDep;
	}
	public void setCodDep(String codDep) {
		this.codDep = codDep;
	}
	public String getCodMuni() {
		return codMuni;
	}
	public void setCodMuni(String codMuni) {
		this.codMuni = codMuni;
	}
	public String getNumNit() {
		return numNit;
	}
	public void setNumNit(String numNit) {
		this.numNit = numNit;
	}
	public String getCodGiro() {
		return codGiro;
	}
	public void setCodGiro(String codGiro) {
		this.codGiro = codGiro;
	}
	

	public List<Contribuyentes> getContribuyentes() {
		return userService.listContribuyentes();
	}

	public void setContribuyentes() {
		this.contribuyentes = userService.listContribuyentes();
		this.contribuyenteModel =  new ContribuyentesModelData(userService.listContribuyentes());
	}
	
	public Contribuyentes getContribuyentesSelected() {
		return contribuyentesSelected;
	}

	public void setContribuyentesSelected(Contribuyentes contribuyentesSelected) {
		this.contribuyentesSelected = contribuyentesSelected;
	}
	
	public ContribuyentesModelData getContribuyenteModel() {
		return contribuyenteModel;
	}

	public void setContribuyenteModel() {		
		this.contribuyenteModel =  new ContribuyentesModelData(userService.listContribuyentes());
	}
}
